类 网络请求 : 网络工具
	变量 网址 : 文本
	变量 cookie : 文本 = 空
	变量 编码 : 文本 = "UTF-8"
	变量 超时 : 整数 = 6000
	变量 欲发送数据 : 对象
	@隐藏
	变量 请求方法 : 文本
	@隐藏
	变量 Host : 文本
	
	方法 取网页源码()
		父对象.取网页源码(网址,cookie,超时,编码)
	结束 方法
	
	方法 发送数据(欲发送数据 : 对象)
		父对象.发送数据(网址,欲发送数据,cookie,超时,编码)
	结束 方法
	
	方法 请求()
		如果 请求方法 == "GET" 则
			取网页源码()
	    否则 请求方法 == "POST" 
	     	发送数据(欲发送数据)
		结束 如果
	结束 方法
	
	方法 解析源数据(源数据 : 文本)
		解析请求头(源数据)
		
		容错处理()
	    变量 请求方法匹配器 = 正则表达式.编译("\\s*(GET|POST)").匹配(源数据)
		如果 请求方法匹配器.匹配下一个() 则
			请求方法 = 请求方法匹配器.取子匹配文本(1)
			变量 请求路径匹配器 = 正则表达式.编译("(\\/.*?)\\s").匹配(源数据)
			变量 请求路径 : 文本
			如果 请求路径匹配器.匹配下一个() 则
				请求路径 = 请求路径匹配器.取子匹配文本(1)
			结束 如果
			如果 Host != 空 && 请求路径 != 空 则
				网址 = "https://" + Host + 请求路径
				调试输出(网址)
			结束 如果
		结束 如果
		结束容错()
	结束 方法
	
	@隐藏
	方法 解析请求头(源数据 : 文本)
		变量 正则 = 正则表达式.编译("([\\w-]+):\\s*(.*)")
		变量 匹配器 = 正则.匹配(源数据)
		循环 (匹配器.匹配下一个())
			如果  匹配器.取子匹配文本(1) == "Host" 则
				Host = 匹配器.取子匹配文本(2)
			结束 如果
			父对象.添加请求头(匹配器.取子匹配文本(1),匹配器.取子匹配文本(2))
		结束 循环
	结束 方法
	
结束 类